package com.my.service;

import com.my.pojo.Goods;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

public interface IGoodsService {
    /**
     * 添加商品
     *
     * @param goods 商品信息
     * @return  状态码
     *      -1 当前店铺存在该商品
     *      -2 sql错误
     *      >0  成功，商品Id
     */
    public Integer addGoods(Goods goods);

    /**
     * 删除商品
     *
     * @param goodsId 商品Id
     * @return  状态码
     *          -1 失败
     *          0 成功
     */
    Integer deleteGoods(Integer goodsId);

    Integer reverseGoods(Integer goodsId);

    /**
     * 更新商品信息
     *
     * @param goods 商品实体，由Controller层封装
     * @return  状态码
     *          -1 失败
     *          0 成功
     */
    public Integer updateGoods(Goods goods,Integer stock);

    /**
     * 数据展示分页
     *
     * @param pageable controller层封装的pageable
     * @param context   上下文
     * @param businessId    商家id
     * @return  goodsPage
     */
    public Page<Goods> showGoods(Pageable pageable, String context, Integer businessId);

    public Page<Goods> showGoods(Pageable pageable, String context);

    Goods selById(Integer id);

    Integer buyGoods(Integer num, Integer goodsId, Integer userId);
}
